package main

import "fmt"

/*
type关键字的的几种作用
1、定义结构体
2、定义接口
3、定义类型别名(别名为了更好的理解代码)-----和原类型一样
4、类型定义(基于已有类型自定义一个新类型)------和原类型不属于同一个类型-自定义的类型可以绑定方法
5、类型判断
*/

func main() {
	/*
		一、定义类型别名
	*/

	type int1 = int
	var a int1
	fmt.Printf("a的type %T\n", a) // a的type int 所以某个类型的别名和原类型一致

	/*
		二、自定义类型
	*/
	type int2 int
	var b int2
	fmt.Printf("b的类型type %T\n", b) // b的类型type main.int2 所以基于某个类型的自定义类型是个新的类型和原来的不一样

}
